package com.galen.subscriber.filter;

import com.alibaba.otter.canal.protocol.CanalEntry;
import lombok.Data;

import java.io.Serializable;
import java.util.List;
import java.util.Map;

/**
 * @author shuaiys
 * @version 1.0
 * @package com.galen.subscriber.filter
 * @description 责任链传递的对象
 * @date 2020-03-05 14:51
 */
@Data
public class CanalExchange implements Serializable {
    private static final long serialVersionUID = -6231537501536712582L;

    private CanalEntry.Entry entry; // canal entry对象

    private String database; // 数据库名

    private String tableName; // 表名

    private CanalEntry.EventType eventType; // 事件类型：UPDATE、INSERT、DELETE

    private Map<String, Object> beforeColumns; // 改变之前的字段

    private Map<String, Object> afterColumns; // 改变之后的字段

    private Map<String, Object> params; // 预留自定义

    private List<String> updateColumns; // 被更改的字段
}
